package Workflow;

import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;

import Model.Candidate;
import Model.Report;

public class Workflow {

	public static void main (String[] args){
		BlockingQueue<Candidate> q1 = new LinkedBlockingQueue<Candidate>();
		BlockingQueue<Candidate> q1b = new LinkedBlockingQueue<Candidate>();
		BlockingQueue<Report> q2 = new LinkedBlockingQueue<Report>();
		BlockingQueue<Candidate> q3_suit = new LinkedBlockingQueue<Candidate>();
		BlockingQueue<Candidate> q3_nonsuit = new LinkedBlockingQueue<Candidate>();
		
		Process p = new Process(q1);
		HRTest hr = new HRTest(q1, q2);
		PTest pt = new PTest(q1b, q2);
		Eval et = new Eval(q2, q3_suit, q3_nonsuit);
		
		new Thread(p).start();
		new Thread(hr).start();
		new Thread(pt).start();
		
	}
}
